package com.dragon.backstage.service;

import com.dragon.backstage.domain.param.userOnline.UserOnlineKickOutParam;
import com.dragon.backstage.domain.param.userOnline.UserOnlineLogoutParam;
import com.dragon.backstage.domain.vo.userOnline.UserOnlineVo;
import com.dragon.common.utils.AjaxResult;

import java.util.List;

/**
 * 在线用户服务类
 *
 * @author dragon
 * @version 1.0
 * @date 2024/10/19 20:05
 */
public interface UserOnlineService {

    /**
     * 在线用户列表
     *
     * @return 在线用户列表
     */
    AjaxResult<List<UserOnlineVo>> userOnlineList();


    /**
     * 注销在线用户
     *
     * @param userOnlineLogoutParam 注销请求参数
     * @return 注销结果
     */
    AjaxResult<Void> userOnlinelogOut(UserOnlineLogoutParam userOnlineLogoutParam);

    /**
     * 踢掉在线用户
     *
     * @param userOnlineKickOutParam 踢人下线请求参数
     * @return 踢人下线结果
     */
    AjaxResult<Void> userOnlineKickOut(UserOnlineKickOutParam userOnlineKickOutParam);

}
